package com.pearadmin.modules.sys.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.pearadmin.common.web.domain.request.PageDomain;
import com.pearadmin.modules.sys.domain.ProducerInfo;
import com.pearadmin.modules.sys.mapper.ProducerInfoMapper;
import com.pearadmin.modules.sys.service.IProducerInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 厂家信息Service业务层处理
 *
 * @author Mr.Ling
 * @date 2021-11-26
 */
@Service
public class ProducerInfoServiceImpl implements IProducerInfoService {
    @Autowired
    private ProducerInfoMapper producerInfoMapper;

    /**
     * 查询厂家信息
     *
     * @param id 厂家信息ID
     * @return 厂家信息
     */
    @Override
    public ProducerInfo selectProducerInfoById(String id) {
        return producerInfoMapper.selectProducerInfoById(id);
    }

    /**
     * 查询厂家信息列表
     *
     * @param producerInfo 厂家信息
     * @return 厂家信息
     */
    @Override
    public List<ProducerInfo> selectProducerInfoList(ProducerInfo producerInfo) {
        return producerInfoMapper.selectProducerInfoList(producerInfo);
    }

    /**
     * 查询厂家信息
     * @param producerInfo 厂家信息
     * @param pageDomain
     * @return 厂家信息 分页集合
     * */
    @Override
    public PageInfo<ProducerInfo> selectProducerInfoPage(ProducerInfo producerInfo, PageDomain pageDomain) {
        PageHelper.startPage(pageDomain.getPage(), pageDomain.getLimit());
        List<ProducerInfo> data = producerInfoMapper.selectProducerInfoList(producerInfo);
        return new PageInfo<>(data);
    }

    /**
     * 新增厂家信息
     *
     * @param producerInfo 厂家信息
     * @return 结果
     */

    @Override
    public int insertProducerInfo(ProducerInfo producerInfo) {
        return producerInfoMapper.insertProducerInfo(producerInfo);
    }

    /**
     * 修改厂家信息
     *
     * @param producerInfo 厂家信息
     * @return 结果
     */
    @Override
    public int updateProducerInfo(ProducerInfo producerInfo) {
        return producerInfoMapper.updateProducerInfo(producerInfo);
    }

    /**
     * 删除厂家信息对象
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteProducerInfoByIds(String[] ids) {
        return producerInfoMapper.deleteProducerInfoByIds(ids);
    }

    /**
     * 删除厂家信息信息
     *
     * @param id 厂家信息ID
     * @return 结果
     */
    @Override
    public int deleteProducerInfoById(String id) {
        return producerInfoMapper.deleteProducerInfoById(id);
    }
}
